#### [Component Diagram](https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/componentdiagram.html)

На диаграмме компонентов показаны части программного обеспечения, встроенные контроллеры и тому подобное, из которых состоит система, а также их организация и зависимости.

Диаграмма компонентов имеет более высокий уровень абстракции, чем диаграмма классов; обычно компонент реализуется одним или несколькими классами (или объектами) во время выполнения. Они представляют собой строительные блоки, построенные таким образом, чтобы в конечном итоге компонент мог охватить большую часть системы.

Вы генерируете элементы схемы компонентов и соединители на страницах «Компонент» панели инструментов диаграммы .

A Component diagram illustrates the pieces of software, embedded controllers and such that make up a system, and their organization and dependencies.

A Component diagram has a higher level of abstraction than a Class diagram; usually a component is implemented by one or more Classes (or Objects) at runtime. They are building blocks, built up so that eventually a component can encompass a large portion of a system.

You generate Component diagram elements and connectors from the 'Component' pages of the Diagram Toolbox.

-- Пример диаграммы
Эта диаграмма демонстрирует ряд компонентов и их взаимосвязь.

Сборочные соединители соединяют предоставленные интерфейсы, поставляемые Продуктом и Заказчиком, с необходимыми интерфейсами, указанными в Заказе. Отношение «Зависимость» сопоставляет данные связанной учетной записи клиента с требуемым интерфейсом «Платеж», также указанным в поле «Заказ».

-- Example Diagram
This diagram demonstrates a number of components and their inter-relationships.

Assembly connectors connect the provided interfaces supplied by Product and Customer to the required interfaces specified by Order. A Dependency relationship maps a customer's associated account details to the required interface Payment, also specified by Order.

-- Значки панели инструментов элемента диаграммы компонентов

| Значок                                   | Описание                                 | Смотрите также                           |
|------------------------------------------|------------------------------------------|------------------------------------------|
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-package.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Пакеты используются для организации содержимого вашего проекта, но при добавлении на диаграмму их можно использовать для структурных или реляционных изображений.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/package.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">пакет</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/packcomponent.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Компонент упаковки - это элемент, который очень похож на компонент на диаграмме, но ведет себя как пакет в<span> </span></font></font><span class="tool-interface" style="box-sizing: border-box; font-weight: 700;"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">окне браузера</font></font></span><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;"><span> </span>.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/packagingcomponent.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Компонент упаковки</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-component.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Компонент - это модульная часть системы, поведение которой определяется предоставленными и необходимыми интерфейсами.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/component.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Составная часть</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-class.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Класс - это представление типа объекта, которое отражает структуру и поведение таких объектов в системе.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/class.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Класс</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-interface.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Интерфейс - это спецификация поведения (или контракт), которую разработчики соглашаются соблюдать.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/interface.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Интерфейс</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-object.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Объект - это конкретный экземпляр класса во время выполнения.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/object.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">объект</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-port.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Порты определяют взаимодействие между классификатором и его средой.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/port.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">порт</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-exposeinterface.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Элемент Expose Interface - это графический метод изображения требуемых или предоставленных интерфейсов компонента, класса или части на<span> </span></font><font style="box-sizing: border-box; vertical-align: inherit;">диаграмме<span> </span></font><font style="box-sizing: border-box; vertical-align: inherit;">компонента или<span> </span></font></font><span class="diagram-type" style="box-sizing: border-box; font-weight: 700; background: none;"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">составной структуры</font></font></span><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;"><span> </span>.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/exposeinterface.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Показать интерфейс</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-artifact.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Артефакт - это любая физическая информация, используемая или производимая системой.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/artifact_element.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Артефакт</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/e-documentartifact.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Артефакт документа - это артефакт, имеющий стереотип «документ».</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/document_artifact.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Документ Артефакт</font></font></a> |

-- Значки панели инструментов соединителя схемы компонентов

| Значок                                   | Описание                                 | Смотрите также                           |
|------------------------------------------|------------------------------------------|------------------------------------------|
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/c-assembly.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Коннектор Assembly соединяет требуемый интерфейс компонента (Component1) с предоставленным интерфейсом другого компонента (Component2), как правило, на диаграмме компонентов.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/assembly.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">сборочный</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/c-delegate.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Соединитель делегата определяет внутреннюю сборку внешних портов и интерфейсов компонента на диаграмме компонентов.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/delegate.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">делегат</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/c-associate.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Ассоциация подразумевает, что два элемента модели имеют отношение, обычно реализуемое как переменная экземпляра в одном или обоих классах.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/associate.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">ассоциация</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/c-realize.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Исходный объект реализует или реализует свой целевой объект.<span> </span></font><font style="box-sizing: border-box; vertical-align: inherit;">Соединители Realize используются в диаграммах вариантов использования, компонентов или требований, чтобы выразить прослеживаемость и полноту модели.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/realise.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(0, 102, 221); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">реализация</font></font></a> |
| ![](https://sparxsystems.com/enterprise_architect_user_guide/15.1/images/c-generalize.png) | <p style="box-sizing: border-box; text-align: left; text-indent: 0px; padding: 14px 0px; margin: 5px; line-height: 19px;"><span class="f_BodyTextTable" style="box-sizing: border-box; color: rgb(51, 51, 51);"><font style="box-sizing: border-box; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Обобщение используется для обозначения наследования.</font></font></span></p> | <a href="https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/generalize.html" style="box-sizing: border-box; text-decoration: none; cursor: url(&quot;&quot;) 14 0, auto !important; color: rgb(239, 128, 0); outline: none; display: block; line-height: normal; margin: 0px; padding: 10px 0px;"><font style="box-sizing: border-box; cursor: url(&quot;&quot;) 14 0, auto !important; vertical-align: inherit;"><font style="box-sizing: border-box; vertical-align: inherit;">Обобщение</font></font></a> |



